const fs = require('fs');
// 路由的处理类 controller/user.controller.js
const userService = require('../service/user.service'); // 数据的处理
const fileService = require('../service/file.service');
const {
  AVATAR_PATH
} = require('../constants/file-path')
class UserController {
  async create (ctx, next) {
    try {
          // 获取用户传递的参数
    const user = ctx.request.body
    // 查询数据
    const result = await userService.create(user); // 把获取到值传给service处理并获取result返回值 Promise
    // 返回数据
    ctx.body = result; // 返回响应数据result
    } catch (err) {
      console.log(err);
    }
  }
  async avatarInfo (ctx, next) {
    const { userId } = ctx.params;
    const avatarInfo = await fileService.getAvatarByUserId(userId);
    // 提供图像的信息
    ctx.response.set('content-type', avatarInfo.mimetype);
    ctx.body = fs.createReadStream(`${AVATAR_PATH}/${avatarInfo.filename}`); // 写入文件数据库
  }
}

module.exports = new UserController();
